#include <iostream> 
#include <cstdlib>
#include <vector>
using namespace std;

int main()
{
	string str;
	while(getline(cin,str))
	{
		string res;
		int i=0;
		string str_back_up;
		for(int k=0;k<str_back_up.length();k++)
		{
			if(str_back_up[k]>='a'&&str_back_up[k]<='z'||str_back_up[k]>='A'&&str_back_up[k]<='Z')
			{
				char ch;
				if(str[0]>='A'&&str[0]<='Z') 
				{
					ch = str[0];
				}
				else ch=str[0]-('a'-'A');
				int pos=0;
				for(int j=1;j<str.length();j++)
				{
					if(str[j]>='A'&&str[j]<='Z')
					{
						if(str[j]<ch)
						{
							ch=str[j];
							pos=j;
						}
					}
					else if(str[j]>='a'&&str[j]<='z')
					{
						char temp=str[j]-('a'-'A');
						if(temp<ch)
						{
							ch=temp;
							pos=j;
						}
					}
					else
					{
						;
					}
				}
				res=res+str[pos];
				str.erase(pos,1);
			}
			else
			{
				res=res+str[k];
				int pos=str.find(str_back_up[k]);
				str.erase(k,1);
			}
		}
		cout<<res<<endl;
	}
}
